﻿using Coolzon.UI.Core;
using Coolzon.UI.Core.Properties;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Coolzon.UI.Charts.Widgets
{
    public partial class DataChartBase
    {
        private double? dataPointWidth;
        
        [Category("其他")]
        [DisplayName("数据项宽度百分比")]
        [Description("DataPointWidth")]
        //////[Editor(typeof(UI.XProperty.Editors.XDoubleEditor), typeof(UI.XProperty.XPropertyValueEditor))]
        [XProperty(XPropertyCategory.Other, "DataPointWidth", "数据项宽度百分比")]
        public double? DataPointWidth
        {
            get
            {
                return dataPointWidth;
            }
            set
            {
                dataPointWidth = value;
                ////Refresh();
            }
        }

        private double?  lineThickness;
        [Category("其他")]
        [DisplayName("线形图线宽度")]
        [Description("LineThickness")]
        //////[Editor(typeof(UI.XProperty.Editors.XDoubleEditor), typeof(UI.XProperty.XPropertyValueEditor))]
        [XProperty(XPropertyCategory.Other, "LineThickness", "线形图线宽度")]
        public double? LineThickness
        {
            get
            {
                return lineThickness;
            }
            set
            {
                lineThickness = value;
                ////Refresh();
            }
        }

        private bool dataSeriesBevel = true;
        [Category("其他")]
        [DisplayName("数据串是否启用斜切效果")]
        [Description("DataSeriesBevel")]
        ////[Editor(typeof(UI.XProperty.Editors.XBooleanEditor), typeof(UI.XProperty.XPropertyValueEditor))]
        [XProperty(XPropertyCategory.Appearance, "Bevel", "是否启用斜切效果", false)]
        public bool Bevel
        {
            get
            {
                return dataSeriesBevel;
            }
            set
            {
                dataSeriesBevel = value;
                ////Refresh();
            }
        }

        private bool _XIs3DMode;
        /// <summary>
        /// 是否显示3D
        /// </summary>
        [Category("其他")]
        [DisplayName("是否启用3D模式")]
        [Description("XIs3DMode")]
        ////[Editor(typeof(UI.XProperty.Editors.XBooleanEditor), typeof(UI.XProperty.XPropertyValueEditor))]
        [XProperty(XPropertyCategory.Other, "View3D", "是否启用3D模式")]
        public bool XIs3DMode
        {
            get
            {
                return _XIs3DMode;
            }
            set
            {
                _XIs3DMode = value;
                ////Refresh();
            }
        }

        private BrushList _colorPlate;
        [Category("Appearance")]
        [DisplayName("调色板")]
        [Description("ColorPlate")]
        ////[Editor(typeof(XProperty.Editors.XColorPlateEditor), typeof(XProperty.XPropertyValueEditor))]
        [XProperty(XPropertyCategory.Appearance, "ColorPlate", "调色板")]
        public BrushList ColorPlate
        {
            get
            {
                return _colorPlate;
            }
            set
            {
                if (_colorPlate != value)
                {
                    _colorPlate = value;
                    ////Refresh();
                }
            }
        }
    }
}
